1. Technical Field
The present invention relates to a system and method for hybrid virtual machine monitor file system operations. More particularly, the present invention relates to a system and method that allows applications executing on a separate operating system to perform operations on data that is managed by a file system, which is incompatible with the separate operating system.
2. Description of the Related Art
A computer's operating system uses a file system to read and write data from and to data storage areas. The file system receives file names from applications executing on the operating system and translates the file names to logical block addresses in order to read/write data from/to the correct data storage locations within the data storage area. The data storage area device stores data in blocks that are commonly 512 characters in size, and operations are performed on complete blocks.
In a business environment, a business may wish to use a separate computer system to perform data back up and restore operations. For example, a business may wish to configure a network to include twenty client computers that read from and write to a main storage area, and a separate computer that includes a utility program for backing up the main storage area in the evening. Another example is that each personal computer may use a hypervisor to run two operating systems. In this example, one operating system may create and use an NTFS (NT File System) file system, and the second operating system may provide data management services, such as a back up. A challenge found with existing art is that this configuration is not feasible unless the file systems used by the client computers are designed to support distributed operations. NTFS, which is the most common file system used in a Windows operating system, does not support distributed operations. This is due to the fact that, although multiple access to a data storage area is common, only one operating system executes the NTFS code. As a result, only that particular operating system is able to understand the file system status.
Another challenge found is when an operating system executing a backup utility program is incompatible with a file system that reads from and writes to the data storage area. For example, a client computer may run a Windows operating system, which uses an NTFS file system. In this example, if a backup computer system uses Linux to execute utility programs, the utility programs are not able to perform a robust data backup or recovery because Linux is not fully compatible with NTFS.
What is needed, therefore, is a system and method that allows applications executing on a separate operating system to perform operations on data that is managed by a file system, which is incompatible with the separate operating system.